<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <meta name="viewport"
        content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0" />
    <meta name="format-detection" content="telephone=no,email=no,date=no,address=no">
    <link rel="stylesheet" type="text/css" href="../css/aui.2.0.css" />
</head>

<body>
    <header class="aui-bar aui-bar-nav" style="background-color: #03a9f4;position:fixed;" id="header">
        <a class="aui-pull-left aui-btn" tapmode onclick="closeWin();">
            <span class="aui-iconfont aui-icon-left"></span>
        </a>
        <div class="aui-title" id="title">
            按托收货
        </div>
    </header>
    <div class="aui-content aui-margin-b-15" style="margin-top:50px;">
        <ul class="aui-list aui-form-list">
            <!-- <li class="aui-list-item">
              <div class="aui-list-item-inner">
                  <div class="aui-list-item-label">送检单号</div>
                  <div class="aui-list-item-input">
                      <input type="text" placeholder="请 扫描/输入 送检单号" id="inspection" value=""
                          onclick="getIdSelector();">
                  </div>
              </div>
          </li> -->
            <li class="aui-list-item">
                <div class="aui-list-item-inner">
                    <div class="aui-list-item-label">仓库</div>
                    <div class="aui-list-item-input">
                        <input type="text" placeholder="选择/扫描 仓库" id="workCenterCode" value=""
                            onclick="getIdSelector();" />
                    </div>
                    <i class="aui-input-addon aui-iconfont aui-icon-right" onclick="goSelectWorkCenter()"></i>
                </div>
            </li>
            <li class="aui-list-item">
                <div class="aui-list-item-inner">
                    <div class="aui-list-item-label">库位</div>
                    <div class="aui-list-item-input">
                        <input type="text" placeholder="选择/扫描 库位" id="workCellCode" value=""
                            onclick="getIdSelector();" />
                    </div>
                    <i class="aui-input-addon aui-iconfont aui-icon-right" onclick="goSelectWorkCell()"></i>
                </div>
            </li>
            <li class="aui-list-item">
                <div class="aui-list-item-inner">
                    <div class="aui-list-item-label">托号</div>
                    <div class="aui-list-item-input">
                        <input type="text" placeholder="请扫描托号" id="traynum" value="" onclick="getIdSelector();">
                    </div>
                </div>
            </li>

        </ul>
        <div style="width:100%;margin-top:2%;"></div>
        <div class="aui-btn aui-btn-info aui-btn-block" onclick="checkBoxNum()">保存</div>
        <div style="background-color:white; height: 100%;width: 100%;margin-top:3%;border:solid 1px #D3D3D3;display:none;margin-bottom:50px;"
            id="tableDiv">
            <table class="table" style='width:100%; font-size:14px;' id="table">
                <tbody>
                    <tr>
                        <td style="width:20%;text-align:right;">入库单号:</td>
                        <td id="inBillCodeT"></td>
                    </tr>
                    <tr>
                        <td style="width:20%;text-align:right;">托&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp号:</td>
                        <td id="boxnumT"></td>
                    </tr>

                    <tr>
                        <td style="width:20%;text-align:right;">仓&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp库:</td>
                        <td id="workCenterNameT"></td>
                    </tr>
                    <tr>
                        <td style="width:20%;text-align:right;">库&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp位:</td>
                        <td id="workCellNameT"></td>
                    </tr>
                    <tr>
                        <td style="width:20%;text-align:right;">操&nbsp&nbsp作&nbsp&nbsp者:</td>
                        <td id="createIdT"></td>
                    </tr>
                    <tr>
                        <td style="width:20%;text-align:right;">操作时间:</td>
                        <td id="createDateT"></td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
    <footer class="aui-bar aui-bar-tab" id="footer">
        <div class="aui-bar-tab-item" tapmode id="scan" onclick="doScan()">
            <i class="aui-iconfont aui-icon-scan aui-text-epblue" style="font-size: 1.8rem"></i>
        </div>
    </footer>
</body>
<script type="text/javascript" src="../script/api.js"></script>
<script type="text/javascript" src="../script/jquery-1.8.2.min.js"></script>
<script type="text/javascript" src="../script/public.js"></script>
<script type="text/javascript">
    //光标所在id
    var idSelector = "";
    var workCenterGid = ""; //仓库GID
    var workCenterCode = ""; //仓库编码
    var workCenterName = ""; //仓库名称
    var workCellGid = ""; //库位GID
    var workCellCode = ""; //库位编码
    var workCellName = ""; //库位名称
    var initWorkCenterId = "";


    //初始化查询明细数据和下拉框下拉框
    apiready = function () {

        // $("#inspection").focus();
        // idSelector = "inspection";
        $("#workCenterCode").focus();
        idSelector = "workCenterCode";

        //初始化，判断登录用户是不是三方库的，是则默认显示三方库仓库
        initSearch();
        
    }
    //初始化，判断登录用户是不是三方库的，是则默认显示三方库仓库
    function initSearch() {
        var un = localStorage.getItem("un");
        var serverUrl = localStorage.getItem('serverUrl');
        var url = serverUrl + "/app/getInitSHWorkCenter";
        var data = {
            values: {
                un: un,
            }
        };
        api.ajax({
            url: url,
            method: 'post',
            dataType: 'json',
            timeout: 300,
            returnAll: false,
            data: data
        }, function (ret, err) {
            if (ret) {
                var data = JSON.stringify(ret);
                var myobj = eval("(" + data + ")");
                if (myobj.code == '0') {

                    sfkFlag = myobj.sfkFlag;
                    initWorkCenterId = myobj.workCenterId;
                    initWorkCenterCode = myobj.workCenterCode;
                    initWorkCenterName = myobj.workCenterName;

                    //三方库账号
                    if (sfkFlag == "Y") {
                        workCenterGid = initWorkCenterId;
                        workCenterCode = initWorkCenterCode + ":" + initWorkCenterName;
                        workCenterName = initWorkCenterName;
                        document.getElementById("workCenterCode").value = workCenterCode;
                    }
                } else {
                    api.toast({
                        msg: myobj.message,
                        duration: 3000
                    });
                }
            }
        });
    }
    // 获取光标所在组件的id
    function getIdSelector() {
        var e = event || window.event;
        var el = e.srcElement || e.target;
        idSelector = el.id;
        $("#" + el.id).select();
    }




    //1：仓库扫描校验
    function getWorkCenter(code, inputId) {
        var serverUrl = localStorage.getItem('serverUrl');
        var un = localStorage.getItem('un');
        var url = serverUrl + "/app/getWorkCenter";
        var data = {
            values: {
                workCenterCodeQ: code,
                mrlCode: "",
                lotCode: "",
                qty: "",
                un:un
            }
        };
        api.ajax({
            url: url,
            method: 'post',
            dataType: 'json',
            timeout: 300,
            returnAll: false,
            data: data
        }, function (ret, err) {
            if (ret) {
                var data = JSON.stringify(ret);
                var myobj = eval("(" + data + ")");
                if (myobj.code == '0') {
                    var list = eval(myobj.list);
                    //三方库账号
                    if (sfkFlag == "Y") {
                        if (list[0].workCenterGid != initWorkCenterId) {
                            api.toast({
                                msg: "扫描的仓库编码【" + list[0].workCenterCode + ":" + list[0].workCenterName + "】不是三方库对应仓库!",
                                duration: 3000
                            });
                            $("#workCenterCode").focus();
                            $("#workCenterCode").select();
                            return;
                        }
                    }
                    workCenterGid = list[0].workCenterGid;
                    workCenterCode = list[0].workCenterCode + ":" + list[0].workCenterName;
                    workCenterName = list[0].workCenterName;
                    document.getElementById(inputId).value = workCenterCode;
                    $("#workCellCode").focus();
                    idSelector = "workCellCode";

                } else {
                    api.toast({
                        msg: myobj.message,
                        duration: 3000
                    });
                    $("#workCenterCode").focus();
                    $("#workCenterCode").select();
                }
            }
        });
    }

    //2：选择仓库
    function goSelectWorkCenter() {
        api.openWin({
            name: 'uwmSelectWorkCenter',
            url: 'uwmSelectWorkCenter.html',
            pageParam: {
                flag: "in",
                name: "uwmReceipt_TrayNew",
                mrlCode: "",
                lotCode: "",
                sfkFlag: sfkFlag,
                workCenterId: initWorkCenterId,
                qty: ""
            }
        });
    }

    //仓库选择后回调函数
    function setWorkCenter(id, code, name) {
        workCenterGid = id;
        workCenterCode = code;
        workCenterName = name;
        //$("#workCenterCode").attr("value",code+":"+name);
        document.getElementById('workCenterCode').value = code + ":" + name;
        $("#workCellCode").focus();
        idSelector = "workCellCode";
    }

    //3；PDA自带扫描回车事件
    $("#workCenterCode").on('keypress', function (e) { //#keyword为input文本框
        var keycode = e.keyCode;
        var sm = $(this).val();
        if (keycode == '13') {

            //仓库编码
            $("#workCenterCode").val(sm);
            getWorkCenter(sm, "workCenterCode");
        }
    });

    //5:库位扫描校验
    function getWorkCell(code, inputId) {
        //扫库位前先扫仓库
        if (inputId == "workCellCode") {
            if (workCenterGid == "" || workCenterGid == null || workCenterGid == undefined) {
                api.toast({
                    msg: "请先选择/扫描 仓库",
                    duration: 3000
                });
                $("#workCellCode").val("");
                workCellCode = "";
                workCellGid = "";
                workCellName = "";
                return;
            }
        }
        var un = localStorage.getItem("un");
        var serverUrl = localStorage.getItem('serverUrl');
        var url = serverUrl + "/app/getWorkCell";
        var data = {
            values: {
                flag: "in_rk",
                workCenterGid: workCenterGid, //仓库GID
                workCellCode: code, //库位编码
                relWorkCellGid: "", //调入库位
                tm: "",
                workCellFlag: "", //原库位调入库位flag
                un: un
            }
        };
        api.ajax({
            url: url,
            method: 'post',
            dataType: 'json',
            timeout: 300,
            returnAll: false,
            data: data
        }, function (ret, err) {
            if (ret) {
                var data = JSON.stringify(ret);
                var myobj = eval("(" + data + ")");
                if (myobj.code == '0') {
                    var list = eval(myobj.list);
                    workCellGid = list[0].workCellGid;
                    workCellCode = list[0].workCellCode + ":" + list[0].workCellName;
                    workCellName = list[0].workCellName;
                    document.getElementById(inputId).value = workCellCode;

                    $("#boxnum").focus();
                    idSelector = "boxnum";
                } else {
                    api.toast({
                        msg: myobj.message,
                        duration: 3000
                    });
                    $("#workCellCode").focus();
                    $("#workCellCode").select();
                }
            }
        });
    }

    //6：选择库位
    function goSelectWorkCell() {
        //仓库非空校验
        if (workCenterGid == "" || workCenterGid == null || workCenterGid == undefined) {
            api.toast({
                msg: "请先选择/扫描 仓库",
                duration: 3000
            });
            return;
        }

        api.openWin({
            name: 'uwmSelectWorkCell',
            url: 'uwmSelectWorkCell.html',
            pageParam: {
                flag: "in_rk",
                name: "uwmReceipt_TrayNew",
                tm: "",
                workCenterGid: workCenterGid,
                relWorkCellGid: "",
                workCellFlag: ""
            }
        });
    }

    //库位选择后回调函数
    function setWorkCell(id, code, name) {
        workCellGid = id;
        workCellCode = code;
        workCellName = name;
        document.getElementById('workCellCode').value = code + ":" + name;
        $("#boxnum").focus();
        idSelector = "boxnum";
    }

    //7；PDA自带扫描回车事件-库位
    $("#workCellCode").on('keypress', function (e) { //#keyword为input文本框
        var keycode = e.keyCode;
        var sm = $(this).val();
        if (keycode == '13') {

            //仓库编码
            $("#workCellCode").val(sm);
            //校验改箱码是否存在
            getWorkCell(sm, "workCellCode");
        }
    });

    //托号回车事件
    $("#traynum").on('keypress', function (e) { //#keyword为input文本框
        var keycode = e.keyCode;
        var tm = $(this).val();
        if (keycode == '13') {
            if(tm != null && tm != "" && tm != undefined){
                $("#traynum").blur();
            console.log(tm);

            //$("#traynum").val(tm);

            //自动保存
            saveAuto();
            }
           
        }
    });




    //保存
    function save() {
        //托号
        var traynum = $("#traynum").val();

        // //取送检单号
        // var inspection = $("#inspection").val();        //送检单必输校验

        // if (inspection == "" || inspection == null || inspection == undefined) {
        //   api.toast({
        //       msg: '请扫描送检单号！',
        //       duration: 3000
        //   });
        //   return;
        // }

        //托号必输校验
        if (traynum == "" || traynum == null || traynum == undefined) {
            api.toast({
                msg: '请扫描托号！',
                duration: 3000
            });
            return;
        }

        //仓库必输校验
        if (workCenterGid == "" || workCenterGid == null || workCenterGid == undefined) {
            api.toast({
                msg: '请选择/扫描 仓库！',
                duration: 3000
            });
            return;
        }

        //库位必输校验
        if (workCellGid == "" || workCellGid == null || workCellGid == undefined) {
            api.toast({
                msg: '请选择/扫描 库位！',
                duration: 3000
            });
            return;
        }
        api.showProgress({
            title: '保存中...',
        });
        var un = localStorage.getItem('un');
        var serverUrl = localStorage.getItem('serverUrl');
        var url = serverUrl + "/app/insertStockTrayNew";
        var data = {
            values: {
                // inspection:inspection,
                traynum: traynum, //托号
                workCenterGid: workCenterGid, //仓库GID
                workCellGid: workCellGid, //库位GID
                un: un
            }
        };
        api.ajax({
            url: url,
            method: 'post',
            dataType: 'json',
            timeout: 300,
            returnAll: false,
            data: data
        }, function (ret, err) {
            if (ret) {
                var data = JSON.stringify(ret);
                var myobj = eval("(" + data + ")");
                //成功
                if (myobj.code == "0") {
                    api.hideProgress();
                    api.toast({
                        msg: "保存成功",
                        duration: 3000
                    });
                    //清空表单数据
                    $("#traynum").val("");
                    $("#traynum").focus();
                    idSelector = "traynum";

                    //表格数据赋值
                    var map = myobj.data;
                    for (var key in map) {
                        $("#" + key).html(map[key]);
                    }
                    $("#tableDiv").css('display', 'block');

                    //失败
                } else if (myobj.code == "1") {
                    //$("#traynum").val("");
                    $("#traynum").val("");
                    $("#traynum").select();
                    idSelector="traynum";
                    api.hideProgress();
                    //$("#traynum").select();
                    api.toast({
                        msg: myobj.message,
                        duration: 3000
                    });
                }
            }else{
                $("#traynum").val("");
                $("#traynum").select();
                 idSelector="traynum";
                 api.hideProgress();
                 //alert(JSON.stringify(err));
                 alert("连接超时，请耐心等待");
            }
        });
    }

    //扫完箱号自动保存
    function saveAuto() {

        //托号
        var traynum = $("#traynum").val();

        // //取送检单号
        // var inspection = $("#inspection").val();        //发货单必输校验

        // if (inspection == "" || inspection == null || inspection == undefined) {
        //     return;
        // }

        //箱号必输校验
        if (traynum == "" || traynum == null || traynum == undefined) {
            return;
        }

        //仓库必输校验
        if (workCenterGid == "" || workCenterGid == null || workCenterGid == undefined) {
            return;
        }
        //库位必输校验
        if (workCellGid == "" || workCellGid == null || workCellGid == undefined) {
            return;
        }

        //保存
        //       save();
        checkBoxNum();
    }

    //扫描
    function doScan() {
        var moduleScanner = api.require('moduleScanner');
        var params = {
            top: 150, //扫描窗口的上边距
            width: 250, //扫描窗口的宽
            height: 250, //扫描窗口的高
            useColor: false, //是否使用自己设定的颜色(startColor和endColor),
            //如果不使用设定的颜色就使用默认的那张网格图
            startColor: '#0F08C8FF', //渐变起始颜色
            endColor: '#7F08C8FF', //渐变结束颜色
            animTime: 2200, //扫描动画时间,单位为毫秒
        };
        moduleScanner.toScannerActivityForResult(params, function (ret, err) {

            if (idSelector == 'inspection') {

                //tmSplit(ret);
                $("#inspection").val(ret);
                //1：托号
            } else if (idSelector == 'traynum') {
                $("#traynum").blur();

                //tmSplit(ret);
                $("#traynum").val(ret);
                //1：仓库
            } else if (idSelector == 'workCenterCode') {

                $("#workCenterCode").val(ret);
                //查询仓库
                getWorkCenter(ret, idSelector);

                //2:库位
            } else if (idSelector == 'workCellCode') {

                $("#workCellCode").val(ret);
                //查询库位
                getWorkCell(ret, idSelector);

            }
        });
    }

    //校验托下所有箱是否与实际库位相符
    function checkBoxNum() {

        //托号
        // var traynum = $("#traynum").val();
        // console.log(traynum);
        //
        // api.showProgress({
        //     title: '校验托[' + traynum + ']下所有箱是否与实际库位相符...',
        // });
        // var un = localStorage.getItem('un');
        // var serverUrl = localStorage.getItem('serverUrl');
        // var url = serverUrl + "/app/checkBoxNum";
        // var data = {
        //     values: { //以表单方式提交参数（JSON对象）
        //         traynum: traynum, //托号
        //         un: un
        //     }
        // };
        // api.ajax({
        //     url: url,
        //     method: 'post',
        //     dataType: 'json',
        //     timeout: 300,
        //     returnAll: false,
        //     data: data
        // }, function (ret, err) {
        //     if (ret) {
        //         var data = JSON.stringify(ret);
        //         var myobj = eval("(" + data + ")");
        //         //成功
        //         if (myobj.code == '0') {
                    save();
        //         } else if (myobj.code == '1') {
        //             api.hideProgress();
        //             api.toast({
        //                 msg: myobj.message,
        //                 duration: 3000
        //             });
        //         }
        //
        //     }
        // });
    }




    //返回按钮
    function closeWin() {
        api.closeWin({});
    }
</script>

</html>
